Ошибка
ошибка C2668: 'sqrt': неоднозначный вызов перегруженной функции c:\program files\assimp\include\assimp\vector3.inl
происходит, когда я включаю «scene.h» в основной файл cpp:
#include "stdafx.h"
#include <stdio.h>
#include <stdlib.h>
#include <GL/glew.h>
#include <GLFW/glfw3.h>
GLFWwindow* window;
#include <glm/glm.hpp>
#include <glm/gtx/transform.hpp>
#include <glm/gtc/matrix_transform.hpp>
#include <assimp/Importer.hpp>
#include <assimp/scene.h>
#include <assimp/postprocess.h>
#define MESH_FILE "cube.obj"
using namespace glm;
#include "common/shader.hpp"
#include "common/controls.hpp"
Я не могу понять, с чем это конфликтует?
glm
функцию sqrt? - person ratchet freak   schedule 09.05.2014sqrt(var)
может относиться либо к стандартному sqrt, либо к glm - person ratchet freak   schedule 09.05.2014glm
действительно содержитsqrt
, то сброс содержимого пространства имен в глобальное пространство имен сusing namespace glm;
вызовет конфликт с тем, что находится в библиотеке C. Никогда не стоит так загрязнять глобальное пространство имен. - person Mike Seymour   schedule 09.05.2014