📄 sortflts.cpp
字号:
/********************************************************************** * File: sortflts.cpp (Formerly sfloats.c) * Description: Code to maintain a sorted list of floats. * Author: Ray Smith * Created: Mon Oct 4 16:15:40 BST 1993 * * (C) Copyright 1993, Hewlett-Packard Ltd. ** Licensed under the Apache License, Version 2.0 (the "License"); ** you may not use this file except in compliance with the License. ** You may obtain a copy of the License at ** http://www.apache.org/licenses/LICENSE-2.0 ** Unless required by applicable law or agreed to in writing, software ** distributed under the License is distributed on an "AS IS" BASIS, ** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. ** See the License for the specific language governing permissions and ** limitations under the License. * **********************************************************************/#include "mfcpch.h"#include "sortflts.h"#include "notdll.h"ELISTIZE (SORTED_FLOAT)/********************************************************************** * SORTED_FLOATS::add * * Add a new entry to the sorted lsit of floats. **********************************************************************/void SORTED_FLOATS::add( //add new entry float value, INT32 key) { SORTED_FLOAT *new_float = new SORTED_FLOAT (value, key); if (list.empty ()) it.add_after_stay_put (new_float); else { it.move_to_first (); while (!it.at_last () && it.data ()->entry < value) it.forward (); if (it.data ()->entry < value) it.add_after_stay_put (new_float); else it.add_before_stay_put (new_float); }}/********************************************************************** * SORTED_FLOATS::remove * * Remove an entry from the sorted lsit of floats. **********************************************************************/void SORTED_FLOATS::remove( //remove the entry INT32 key) { if (!list.empty ()) { for (it.mark_cycle_pt (); !it.cycled_list (); it.forward ()) { if (it.data ()->address == key) { delete it.extract (); return; } } }}/********************************************************************** * SORTED_FLOATS::operator[] * * Return the floating point value of the given index into the list. **********************************************************************/floatSORTED_FLOATS::operator[] ( //get an entryINT32 index //to list) { it.move_to_first (); return it.data_relative (index)->entry;}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -