奇怪的行爲。 我正在用C++開發android原生應用程序,並有bug。某些功能因某種原因未被調用。經過一番復歸和比較..「std :: string const」與「const std :: string」
這使得程序的麻煩..
const std::string STR_PATH_ASSET("assets/");
const std::string STR_PATH_SD("/sdcard/unlock_data/assets/");
const std::string STR_SUFFIX_PNG(".png");
const std::string STR_SUFFIX_KTX(".ktx");
這使得工作方案..
std::string const STR_PATH_ASSET("assets/");
std::string const STR_PATH_SD("/sdcard/unlock_data/assets/");
std::string const STR_SUFFIX_PNG(".png");
std::string const STR_SUFFIX_KTX(".ktx");
也無妨的作品,但我不知道爲什麼這diffrerence結果,例如奇怪的行爲。任何猜測?
已添加完整來源。
它不僅是「std :: string const」與「const std :: string」的問題,而且是聲明本身。抱歉。
這是我的源代碼。當我取消註釋這些std :: string的東西它不能正常工作。即時通訊繪製東西到我的android,但一些網格(頂點)的初始位置不同時使用該std :: string的東西。在邏輯上它不能影響這個常量是否存在。即時通訊使用Windows cygwin ndk編譯器版本4.6,ndk版本14。這個const std :: string聲明會影響另一個棧的內存嗎?即。透明值或什麼?
typedef enum _ImageCompressType{
//REF http://stackoverflow.com/questions/9148795/android-opengl-texture-compression
COMPRESS_UNAVAILABLE = -1,
COMPRESS_ETC1 = 1,
COMPRESS_PVRTC,
COMPRESS_ATITC,
COMPRESS_S3TC
}ImageCompressType;
typedef enum _FileDataFrom{
FROM_ASSET, FROM_SD
}FileDataFrom;
//std::string const STR_PATH_ASSET("assets/");
//std::string const STR_PATH_SD("/sdcard/unlock_data/assets/");
//std::string const STR_SUFFIX_PNG(".png");
//std::string const STR_SUFFIX_KTX(".ktx");
class ImagesLoader {
public:
ImagesLoader* mgr;
static ImagesLoader* getInstance();
static void destroyInstance();
ImageCompressType TypeImgComrpess;
// GLuint* loadTextures(FileDataFrom from, std::vector<std::string> filename);
private:
ImagesLoader() {}
~ImagesLoader() {}
static ImagesLoader* self;
};
它不應該有所作爲。 –
但它驅動不同的結果.. – minimanimo
還有其他的事情涉及。 'const std :: string stringName'和'std :: string const stringname'完全一樣。 –