小编mwe*_*chy的帖子

glfwSwapInterval(1)无法启用vsync?

glfwSwapInterval(1)似乎不适合我.如果我在CCC或setVerticalSyncEnabled(true)SFML中强制VSync,我的fps下降到60,但GLFW只是以9000 fps运行.我是以错误的方式解决这个问题还是GLFW被窃听?

c++ windows opengl glfw

10
推荐指数
1
解决办法
1万
查看次数

Spring <constructor-arg>元素必须指定ref或value

我遇到了Spring和构造函数注入的问题.我想用name(String)和特殊id(long)创建动态对象.

但是当加载spring.xml文件时会发生异常.

线程"main"java.lang.ExceptionInInitializerError中的异常

由以下原因引起:org.springframework.beans.factory.UnsatisfiedDependencyException:在类路径资源[spring.xml]中定义名称为'someBean'的bean时出错:通过构造函数参数表示的不满意的依赖关系,类型为[long]的索引0:不明确的构造函数参数types - 您是否将正确的bean引用指定为构造函数参数?

我的spring.xml:

    <bean id="someBean" class="someClass" >
        <constructor-arg index="0" type="java.lang.String" value=""/>       
        <constructor-arg index="1" type="long" value=""/>
    </bean>
</beans>
Run Code Online (Sandbox Code Playgroud)

那有什么不对?构造函数arg的索引为1(而不是0,如例外)

java spring constructor-injection

10
推荐指数
1
解决办法
4万
查看次数

strstr()函数

我正在尝试编写一个程序,将用户输入的子字符串与字符串数组进行比较.

#include <stdio.h>
#include <string.h>

char animals[][20] = {
    "dogs are cool",
    "frogs are freaky",
    "monkeys are crazy"
};

int main() {
    char input[10];

    puts("Enter animal name: ");
    fgets(input, sizeof(input), stdin);

    int i;
    for(i = 0; i < 3; i++) {
        if(strstr(animals[i], input))
            printf("%s", animals[i]);
    }
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

当我进入青蛙时,例如它应该打印出"青蛙怪异"的信息,但它什么都没打印出来.

所以我试着写一行来每次打印出strstr()函数的值,它们都返回0,这意味着所有的比较都失败了.我不明白为什么,有人可以帮帮我吗?

c substring strstr

6
推荐指数
3
解决办法
2966
查看次数

使用unicode路径打开文件

我正在使用mingw在Windows 7下工作.我遇到了一些unicode文件名的怪异行为.我的程序需要是可移植的,我正在使用它boost::filesystem (v 1.53)来处理文件路径.

这一直进展顺利,直到我需要打开带有unicode文件名的文件.这不是文件的内容,而是文件的名称.

我尝试了以下内容:为了测试C:\UnicodeTest\????????,我创建了一个名为的文件夹,我尝试在其中创建一个文件,方法是将文件名附加test.txt到boost wpath.由于某种原因,文件的创建失败.我正在使用boost的fstream,当我尝试打开文件时,设置了流的failbit.现在有趣的是,当我将foldername追加到路径时,调用create_directories()成功并创建正确的目录C:\UnicodeTest\????????\folder.

我真的不明白为什么它不适用于文件.这是我使用的代码:

boost::filesystem::wpath path;

// find the folder to test
boost::filesystem::wpath dirPath = "C:\\UnicodeTest";
vector<boost::filesystem::wpath> files;
copy(boost::filesystem::directory_iterator(dirPath), boost::filesystem::directory_iterator(), back_inserter(files));

for(boost::filesystem::wpath &file : files)
{
    if(boost::filesystem::is_directory(file))
    {
        path = file;
        break;
    }
}

// create a path for the folder
boost::filesystem::wpath folderPath = path / "folder";
// this works just fine
boost::filesystem::create_directories(folderPath);

// create a path for the file
boost::filesystem::wpath filePath = path …
Run Code Online (Sandbox Code Playgroud)

c++ unicode boost

5
推荐指数
1
解决办法
3456
查看次数

返回多种类型

下面的代码片段是一个游戏,编译器抱怨返回值所以我想要一些反馈如何以其他方式做这个技巧让函数根据放入的类型返回两个不同的类型但没有重载

template <typename T>
T GetTimeDead(uint64 Guid)
{
    bool stringOutput;
    if(typeid(T) == typeid(float))
        stringOutput = false;
    else
        stringOutput = true;

    bool found = false;
    for(map<uint32, TrackInfo>::iterator itr = dieTracker.begin(); itr != dieTracker.end(); ++itr)
    {
        if(itr->second.GUID == Guid)
        {
            found = true;
            break;
        }
    }

    if(!found)
        stringOutput ? return "never" : return sObjectMgr->FindCreature(Guid)->GetCreatureData()->spawntimesecs;

    if(!stringOutput)
        return dieTracker.find(Guid)->second.seconds;
    float seconds = dieTracker.find(Guid)->second.seconds;
    uint64 secs    = seconds % 60;
    uint64 minutes = seconds % 3600 / 60;
    uint64 hours   = seconds % 86400  / …
Run Code Online (Sandbox Code Playgroud)

c++ feedback

4
推荐指数
1
解决办法
197
查看次数

函数返回后指向无效内容的指针

我在返回这个 const 指针时遇到了问题。使用调试器向我展示了场景已正确导入并存储在可变场景中。返回scene后,scene指向的内容丢失,调用loadData()的类无法访问。

const aiScene* IOHandler::loadData(const std::string& pFile){
    Assimp::Importer importer;

    const aiScene* scene = importer.ReadFile(pFile,
    aiProcess_CalcTangentSpace      |
    aiProcess_Triangulate           |
    aiProcess_JoinIdenticalVertices |
    aiProcess_SortByPType);

    return scene;
}
Run Code Online (Sandbox Code Playgroud)

Importer并且aiScene(struct)是assimp库的一部分,不能修改)

我假设场景存储在堆栈中,返回调用重置堆栈指针并且内容丢失。如何在c++中处理这样的问题?

c++ assimp

2
推荐指数
1
解决办法
579
查看次数

打印阵列填充其他功能

我尝试反转我的字符串并打印出结果.

#include <stdio.h>
#include <string.h>

void reverse(char *string, char *revstr)
{   
    int length, i, j;

    length = strlen(string);

    for (i=length, j=0; i >= 0; i--, j++) {
        revstr[j] = string[i];
    }
}

int void()
{   
    char string[] = "reverse!";
    int length = strlen(string);
    char revstr[length];
    int i;

    reverse(string, revstr);

    printf("%s", revstr); //nothing
    for (i=0; i<=strlen(string); i++) {
        printf("%c", revstr[i]); //It's work
    }
    printf("\n");

    return 0;
}
Run Code Online (Sandbox Code Playgroud)

c

0
推荐指数
1
解决办法
74
查看次数